if node.isEditable() then
  local txt = node.text
  local gb = node.getTextSelectionEnd()
  if gb > 0 then
    local s = utf8.sub(txt, 1, gb)
    local deletedText = utf8.sub(txt, gb+1)
    service.copy(deletedText)
    service.setText(node, s)
    service.setSelection(node, gb)
    if deletedText ~= "" then
      service.speak("Đã cắt: ".. deletedText)
    end
  else
    service.speak("Không có văn bản")
    service.beep()
  end
end